using System;

namespace Book.Blog.Core.DTOs
{
    public class CategoryDTO
    {
        public Guid Id { get; set; }
        public required string Name { get; set; }
        public string? Description { get; set; }
        public required string Slug { get; set; }
        public int SortOrder { get; set; }
        public int PostCount { get; set; }
        public DateTime CreatedTime { get; set; }
        public DateTime? UpdatedTime { get; set; }
    }

    public class CreateCategoryDTO
    {
        public required string Name { get; set; }
        public string? Description { get; set; }
        public required string Slug { get; set; }
        public int SortOrder { get; set; }
    }

    public class UpdateCategoryDTO
    {
        public required string Name { get; set; }
        public string? Description { get; set; }
        public required string Slug { get; set; }
        public int SortOrder { get; set; }
    }

    public class CategoryListDTO
    {
        public Guid Id { get; set; }
        public required string Name { get; set; }
        public string? Description { get; set; }
        public required string Slug { get; set; }
        public int SortOrder { get; set; }
        public int PostCount { get; set; }
    }
} 